Advanced concurrency control in Java
نویسندگان
چکیده
Developing concurrent applications is not a trivial task. As programs grow larger and become more complex, advanced concurrency control mechanisms are needed to ensure that application consistency is not compromised. Managing mutual exclusion on a per-object basis is not sufficient to guarantee isolation of sets of semantically-related actions. In this paper, we consider ‘atomic blocks’, a simple and lightweight concurrency control paradigm that enables arbitrary blocks of code to access multiple shared objects in isolation. We evaluate various strategies for implementing atomic blocks in Java, in such a way that concurrency control is transparent to the programmer, isolation is preserved, and concurrency is maximized. We discuss these concurrency control strategies and evaluate them in terms of complexity and performance. Copyright 2002 John Wiley & Sons, Ltd.
منابع مشابه
Teaching Java Concurrency to CS vs IT Students: A Matter of Emphasis
A number of colleges and universities have recently added new degree programs in Information Technology (IT), or added IT components to existing Computer Science (CS) programs. Java language and technology are almost inescapable elements of both CS and IT programs. One of Java's more advanced features, languagelevel support for concurrency in the form of explicit multithreading, is important to...
متن کاملProcess Oriented Design for Java: Concurrency for All
Concurrency is thought to be an advanced topic – much harder than serial computing which, therefore, needs to be mastered first. This paper contends that this tradition is wrong, which has radical implications for the way we educate people in Computer Science – and on how we apply what we have learnt. A process-oriented design pattern for concurrency is presented with a specific binding for Jav...
متن کاملConcurrency Control with Java and Relational Databases
As web–based information systems usually run in concurrent environment, the complexity for implementing and testing those systems is significantly high. Therefore it is useful to have guidelines to introduce concurrency control, avoiding ad hoc control strategies, which may have a negative impact in efficiency and may not guarantee system safety. This paper defines guidelines for concurrency co...
متن کاملA Survey of Concurrency Control Algorithms in the Operating Systems
Concurrency control is one of the important problems in operation systems. Various studies have been reported to present different algorithms to address this problem, although a few attempts have been made to represent an overall view of the characteristics of these algorithms and comparison of their capabilities to each other. This paper presents a survey of the current methods for controlling...
متن کاملA Classification of Concurrency Failures in Java Components
The Java programming language supports concurrency. Concurrent programs are hard to test due to their inherent non-determinism. This paper presents a classification of concurrency failures that is based on a model of Java concurrency. The model and failure classification is used to justify coverage of synchronization primitives of concurrent components. This is achieved by constructing concurre...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Concurrency and Computation: Practice and Experience
دوره 14 شماره
صفحات -
تاریخ انتشار 2002